package com.example.cscot;
//
import android.app.Application;
//
// 两种常见APP：一种是带底部导航栏的，就一个mainActivity通过绑定不同的fragment切换界面。
// 一种是定义不同的activity，通过intent显示切换不同的界面。第一种app的mainActivity和
// myApplication的寿命周期是一致的，第二种APP切换界面时，mainActivity可能就不存在啦。
// 所以我们的全局变量/工具函数(Helper)挂载在myApplication比较合适。另外有些界面相关函数
// 内部经常需要context(上下文，其实就是界面相关activity相关)。
//
// 任何项目中记得都导出myApp/mainActivity两个全部变量，方便开发中传递变量，
// 特殊全局变量名: WeiLe.myApp, WeiLe.mainActivity
//
// 这个两个都可以认为是永久的，不要考虑生命周期问题，不会因为切换app而重置。
// 注意MainActivity的初始化会晚于Fragment和各种View，
//
// MyApp这个类是继承系统级对象的，但是它是我们手动添加的，保证尽量简单，照抄这里就行。（非AS自动创建的）
// 在MyApp中额外开个WeiLe类挂上各种全局变量和工具函数。而mainActivity总是系统预定义的。
//
// MyApp是系统级对象，集合MainActivity一样无需你声明实例，你也找不到它何时创建出来的
// 告警可忽略，因为这是APP级别的，不会重复创建/删除
//
// 你看不到系统声明MyApp实例的地方，放到这里就行，系统就会自动声明的，onCreate就会被调用的。
//
public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        WeiLe.myApp = this;
    } // create
}
